package com.adk.backend.service;

import com.adk.backend.common.PageResult;
import com.adk.backend.entity.LxBillingList;
import com.baomidou.mybatisplus.extension.service.IService;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 财务管理服务接口
 */
public interface FinanceService extends IService<LxBillingList> {
    
    /**
     * 分页查询账单列表
     */
    PageResult<Map<String, Object>> getBillList(Map<String, Object> params);
    
    /**
     * 根据订单ID查询账单
     */
    LxBillingList getBillByOrderId(Long orderId, Integer shipType);
    
    /**
     * 创建账单
     */
    LxBillingList createBill(LxBillingList bill, List<Map<String, Object>> details, Integer userId);
    
    /**
     * 更新账单
     */
    boolean updateBill(LxBillingList bill, Integer userId);
    
    /**
     * 更新付款状态
     */
    boolean updatePayStatus(Long billId, Integer paid, BigDecimal paidAmount, Integer userId);
    
    /**
     * 获取账单明细
     */
    List<Map<String, Object>> getBillDetails(Long billId);
}

